﻿#ifndef _OI_PLSCANNERDLL_PCH_HPP_
#define _OI_PLSCANNERDLL_PCH_HPP_

#include <QtGui/QtGui>

#include "Base/OiGlobals.hpp"
#include "Base/OiDefines.hpp"
#include "Base/OiUtility.hpp"

#include "Core/OiLocator.hpp"
#include "Core/OiSettings.hpp"

#include "View/OiLayer.hpp"
#include "View/OiPixmap.hpp"

#include "Ctrl/OiDocket.hpp"

#include "Camera/OiDriverManager.hpp"

#include "Flow/OiOperator.hpp"
#include "Flow/OiFactory.hpp"
#include "Flow/OiProgram.hpp"
#include "Flow/OiContext.hpp"
#include "Flow/OiInterpreter.hpp"
#include "Flow/OiEnvironment.hpp"

#include "Appl/OiProgGauges.hpp"
#include "Appl/OiProgOutput.hpp"
#include "Appl/OiProgDetail.hpp"
#include "Appl/OiProgDefine.hpp"
#include "Appl/OiProgViewer.hpp"
#include "Appl/OiOperStudio.hpp"

#include "Appl/OiOperDrawer.hpp"
#include "Appl/OiOperViewer.hpp"
#include "Appl/OiOperDetail.hpp"
#include "Appl/OiOperFiller.hpp"
#include "Appl/OiOperParams.hpp"
#include "Appl/OiOperBinder.hpp"


#include "OiPLScannerWindow.hpp"
#include "PLScannerCore/OiPLScannerCore.hpp"
#include "PLScannerCore/OiPLScannerDefined.hpp"
#include "PLScannerCore/OiPLScannerError.hpp"
#include "PLScannerCore/OiPLScannerWorker.hpp"
#include "PLScannerCore/OiMessageOutput.hpp"
#include "PLScannerCore/OiTitleWidget.hpp"
#include "PLScannerCore/OiValueLabel.hpp"
#include "PLScannerCore/OiToolLabel.hpp"

#include "PLScannerCore/Config/OiProductParams.hpp"
#include "PLScannerCore/Config/OiProductDlg.hpp"
#include "PLScannerCore/Config/OiProductWidget.hpp"
#include "PLScannerCore/Config/OiProductStatus.hpp"

#include "PLScannerCore/Output/OiPLScannerOutput.hpp"

#include "PLScannerCore/Util/OiCommunicationTask.hpp"
#include "PLScannerCore/Util/OiOPCTask.hpp"
#include "PLScannerCore/Util/LeaderTech/OiLeaderTech_UDP.hpp"

#include "PLScannerCore/Database/OiDatabase.hpp"

#include "PLScannerCore/View/OiImageViewer.hpp"
#include "PLScannerCore/View/OiProfilesChart.hpp"
#include "PLScannerCore/View/OiProfilesView.hpp"
#include "PLScannerCore/View/OiDynamicSplineChart.hpp"
#include "PLScannerCore/View/OiDynamicSplineView.hpp"
#include "PLScannerCore/View/OiLineView.hpp"
#include "PLScannerCore/View/OiToolProfilesView.hpp"
#include "PLScannerCore/View/OiValueInDateChart.hpp"

#include "PLScannerCore/User/OiUserManage.hpp"
#include "PLScannerCore/User/OiUserManageDlg.hpp"

#include "PLScannerCore/Camera/OiAcquire.hpp"

#include "PLScannerCore/Motor/OiMotor.hpp"

#include "PLScannerCore/Settings/OiSettingsDlg.hpp"
#include "PLScannerCore/Calib/OiCalibration.hpp"
#include "PLScannerCore/Calib/OiCalibProfilesView.hpp"
#include "PLScannerCore/Calib/OiPreviewer.hpp"
#include "PLScannerCore/Calib/OiDataDlg.hpp"
#include "LT360Base/Algorithms.hpp"


#include "Page/OiPageAbstract.hpp"
#include "Page/OiPlyPage.hpp"
#include "Page/OiConcludePage.hpp"
#include "Page/OiRecordPage.hpp"
#include "Page/OiValuePage.hpp"
#include "Page/OiFixedRecordPage.hpp"

#undef QT_BEGIN_MOC_NAMESPACE
#undef QT_END_MOC_NAMESPACE

#define QT_BEGIN_MOC_NAMESPACE namespace Oi { namespace PLScannerDll {
#define QT_END_MOC_NAMESPACE } }

#define OiAlarm() qWarning().nospace().noquote() << "S<<"

#define OiCAlarm(Str) QMetaObject::invokeMethod(Core::OiGetMainWindow(), "clearAlarm", Qt::AutoConnection, Q_ARG(const QString&, Str))

#define OiProgress(Value) QMetaObject::invokeMethod(Core::OiGetMainWindow(), "setProgressValue", Qt::AutoConnection, Q_ARG(const int, Value))

#endif
